﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;

namespace ADB_QuanLyThuVien
{
    public partial class frmAddBook : DevExpress.XtraEditors.XtraForm
    {
        public frmAddBook()
        {
            InitializeComponent();
        }

        private void frmAddBook_Load(object sender, EventArgs e)
        {
            List<DTO_NhaXuatBan> lNXB = new List<DTO_NhaXuatBan>();
            lNXB = DAO_Publisher.SelectAll();
            nhaxbComboBox.DataSource = lNXB;
            nhaxbComboBox.DisplayMember = "TenNXB";
            nhaxbComboBox.ValueMember = "MaNXB";
            //Hiển thị danh sách tác giả
            List<Author> lAuthor = new List<Author>();
            lAuthor = DAO_Authors.SelectAll();
            tacgiaComboBox.DataSource = lAuthor;
            tacgiaComboBox.DisplayMember = "Name";
            tacgiaComboBox.ValueMember = "Id";
            // Hiển thị danh sách thể loại
            List<Category> lCategory = new List<Category>();
            lCategory = DAO_Categories.SelectAll();
            theLoaiComboBox.DataSource = lCategory;
            theLoaiComboBox.DisplayMember = "NameCa";
            theLoaiComboBox.ValueMember = "IdCa";
            //Hiển thị danh sách nhân viên nhập
            List<Member> lEmployee = new List<Member>();
            lEmployee = DAO_Member.SelectAllEmployee();
            NhanVienComboBox.DataSource = lEmployee;
            NhanVienComboBox.DisplayMember = "Name";
            NhanVienComboBox.ValueMember = "Id";
        }

        private void btnThem_Click(object sender, EventArgs e)
        {
            Book sach = new Book();
            try
            {
                sach.TenSach = tenSachTextBox.Text;
                sach.GiaTien = Convert.ToInt64(giatienTextBox.Text);
                sach.Namxb = Convert.ToInt32(namxbTextBox.Text);
                sach.LuotMuon = 0;
                sach.Ngaynhap = DateTime.Today;
                sach.Soluong = Convert.ToInt32(soluongTextBox.Text);
                ////sach.NhaXB = (DTO_NhaXuatBan)nhaxbComboBox.SelectedItem;
                ////sach.NhanVien = (Employee)NhanVienComboBox.SelectedItem;

            }
            catch (Exception ex)
            {
                MessageBox.Show("Dữ liệu chưa chính xác. Lỗi:\n" + ex.Message);
            }
            string idCa = theLoaiComboBox.SelectedValue.ToString();
            string idAu = tacgiaComboBox.SelectedValue.ToString();
            string idPu = nhaxbComboBox.SelectedValue.ToString();
            string idEm = NhanVienComboBox.SelectedValue.ToString();
            bool kq = DAO_Books.AddBook(sach, idAu, idCa, idPu, idEm);
            if (kq == true)
            {
                MessageBox.Show("Thêm thành công.");
            }
            else
                MessageBox.Show("Sách đã tồn tại trong thư viện");

        }

        private void btnXem_Click(object sender, EventArgs e)
        {
            List<Book> list = new List<Book>();
            list = DAO_Books.SelectAll();
            gridControl1.DataSource = list;
            

        }

        private void btnXoa_Click(object sender, EventArgs e)
        {
            string idBook = gridView1.GetRowCellValue(gridView1.FocusedRowHandle, gridView1.Columns["MaSach"]).ToString();
            bool kq = DAO_Books.RemoveBook(idBook);
            if (kq == true)
                MessageBox.Show("Xóa thành công.");
            else
                MessageBox.Show("Không thể xóa sách này");
        }

    }
}